"""
将日服数据库汉化，
繁中text数据转简体后复制到日服
"""
import sqlite3
import shutil
from opencc import OpenCC
from tqdm import tqdm

# 复制原始数据库文件
shutil.copy2("database/master_JP.mdb", "database/translate.mdb")

# 初始化 OpenCC 转换器，用于繁体转简体
cc = OpenCC('t2s')

# 连接复制后的数据库和繁体中文数据库
translate_db = sqlite3.connect("database/translate.mdb")
tw_db = sqlite3.connect("database/master_TW.mdb")

# 创建游标对象
translate_cursor = translate_db.cursor()
tw_cursor = tw_db.cursor()

# 读取繁体中文数据库中的 text_data 表
tw_cursor.execute("SELECT id, category, `index`, text FROM text_data")
tw_data = tw_cursor.fetchall()

# 遍历繁体中文数据
for row in tqdm(tw_data):
    id, category, index, text = row
    text = (text.replace("持久力", "耐力").replace("意志力", "毅力").replace("領頭", "跑逃").
     replace("前列","跑先").replace("居中", "跑差").replace("後追", "跑追").replace("一哩","英里"))

    # 将繁体中文转换为简体中文
    # simplified_text = cc.convert(text)
    simplified_text = text

    # 更新复制后的数据库中对应的记录
    translate_cursor.execute("""
        UPDATE text_data 
        SET text = ? 
        WHERE id = ? AND category = ? AND `index` = ?
    """, (simplified_text, id, category, index))

    print(text, '->', simplified_text)

# 提交事务
translate_db.commit()

# 关闭游标和数据库连接
translate_cursor.close()
tw_cursor.close()
translate_db.close()
tw_db.close()

print("数据更新完成！")
